package com.example.abilityslicenavigation.slice;

import ohos.aafwk.ability.AbilitySlice;
import ohos.aafwk.content.Intent;
import ohos.agp.colors.RgbColor;
import ohos.agp.components.Component;
import ohos.agp.components.ComponentContainer;
import ohos.agp.components.DirectionalLayout;
import ohos.agp.components.Text;
import ohos.agp.components.element.ShapeElement;
import ohos.agp.utils.TextAlignment;

public class MainAbilitySlice extends AbilitySlice {
    @Override
    public void onStart(Intent intent) {
        super.onStart(intent);
        // super.setUIContent(ResourceTable.Layout_ability_main);
        // 创建布局配置对象
        ComponentContainer.LayoutConfig config = new ComponentContainer.LayoutConfig(ComponentContainer.LayoutConfig.MATCH_PARENT, ComponentContainer.LayoutConfig.MATCH_PARENT);
        // 创建定向布局对象，并传入布局配置
        DirectionalLayout layout = new DirectionalLayout(this);
        // 设置定向布局的背景颜色为白色
        ShapeElement element = new ShapeElement(); // 创建形状元素element对象
        element.setRgbColor(new RgbColor(255, 255, 255)); // 设置element颜色为白色
        layout.setBackground(element);  // 设置背景为element
        layout.setLayoutConfig(config); // 设置定向布局的布局配置选项
        // 创建文本组件对象，并传入布局配置，设置文本内容
        Text text = new Text(this); // 创建文本组件
        text.setLayoutConfig(config); // 设置文本组件的布局配置选项
        text.setTextAlignment(TextAlignment.CENTER); // 设置文本对齐方式为居中
        text.setText("MainAbilitySlice"); // 设置文本内容为"MainAbilitySlice"
        text.setTextSize(50); // 设置文本大小为50
        // 将文本组件加入到定向布局中
        layout.addComponent(text);
        // 将UI内容设置为定向布局
        super.setUIContent(layout);

        // 处理文本组件text的单击事件
        text.setClickedListener(new Component.ClickedListener() {
            @Override
            public void onClick(Component component) {
                // 跳转到SecondAbilitySlice
                present(new SecondAbilitySlice(), new Intent());
            }
        });

    }

    @Override
    public void onActive() {
        super.onActive();
    }

    @Override
    public void onForeground(Intent intent) {
        super.onForeground(intent);
    }
}
